home *** CD-ROM | disk | FTP | other *** search
/ PC-Blue - MS DOS Public Domain Library / PC-Blue MS-DOS Public Domain Library - NYACC.iso / vol058 / tableofc.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1987-01-13  |  10.8 KB  |  312 lines

  1. 10  REM Documentation for the Genealogy ON DISPLAY Programs
  2. 20  REM All data is in the form of DATA statements.
  3. 30  REM By:  Melvin O. Duke.  Updated June 1983.
  4. 40  DATA Genealogy
  5. 50  DATA User's Manual
  6. 60  DATA -5
  7. 70  DATA 1
  8. 80  INDENT = 0
  9. 90  DASHES$ = "+"+STRING$(54,45)+"+"
  10. 100  TRIM.LINE$ = "(Trim-line)"
  11. 110  REM Program begins here
  12. 120  READ TITLE$, DOC.NAME$, PAGE.NO, LINE.NO
  13. 130  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  14. 140  GOSUB 500  'For trim line and heading space
  15. 150  FOR I = 1 TO 6 : LPRINT : NEXT I
  16. 160  LPRINT CHR$(14);  'Set Expanded Print
  17. 170  LPRINT TAB(TAB.POS-2);TITLE$
  18. 180  LPRINT CHR$(18);  'Return to normal
  19. 190  FOR I = 1 TO 3 : LPRINT : NEXT I
  20. 200  LPRINT CHR$(27); "E"; 'Set Emphasized mode
  21. 210  LPRINT TAB(TAB.POS+12);"ON DISPLAY"
  22. 220  LPRINT CHR$(27); "F"; 'Return to normal
  23. 222  LPRINT : LPRINT : LPRINT
  24. 224  LPRINT TAB(TAB.POS+11);"Version 1.3"
  25. 230  FOR I = 1 TO 11 : LPRINT : NEXT I
  26. 240  LPRINT TAB(TAB.POS+10); DOC.NAME$
  27. 250  LINE.NO = LINE.NO + 27
  28. 260  '
  29. 270  READ REPLY$
  30. 280  IF LEFT$(REPLY$,1) = "." THEN GOSUB 850: GOTO 270
  31. 290  IF LINE.NO > 44 THEN GOSUB 610
  32. 300  REM Print the line if not a command
  33. 310  LPRINT TAB(TAB.POS);REPLY$
  34. 320  LINE.NO = LINE.NO + 1
  35. 330  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  36. 340  GOTO 270
  37. 350  REM Data for the Copyright Page
  38. 354  DATA ".pa"
  39. 358  DATA "Anyone may request a copy of these"
  40. 362  DATA "programs by sending two blank diskettes"
  41. 366  DATA "to the author of the programs (one for"
  42. 370  DATA "the programs, and the second for the"
  43. 374  DATA "documentation)."
  44. 378  DATA ".sp"
  45. 382  DATA "An addressed, postage-paid return"
  46. 386  DATA "mailer must accompany the diskettes (no"
  47. 390  DATA "exceptions, please).
  48. 394  DATA ".sp"
  49. 398  DATA "A copy of the programs with documenta-"
  50. 402  DATA "tion will be sent by return mail."
  51. 406  DATA ".sp"
  52. 410  DATA "Regardless of whether a contribution"
  53. 414  DATA "is made, the user is encouraged to"
  54. 418  DATA "copy and share the program with others."
  55. 422  DATA "Payment for use is discretionary on"
  56. 426  DATA "the part of each subsequent user."
  57. 430  DATA ".vt 4"
  58. 434  DATA "If you are using these programs, and"
  59. 438  DATA "finding them of value, your contribution"
  60. 442  DATA "($35 suggested) will be appreciated."
  61. 446  DATA ".sp"
  62. 450  DATA "Melvin O. Duke"
  63. 454  DATA "P. O. Box 20836"
  64. 458  DATA "San Jose, CA  95160"
  65. 462  DATA ".vt 4"
  66. 466  DATA "Copyright (c) 1983, by:"
  67. 470  DATA "Melvin O. Duke."
  68. 474  DATA ".sp"
  69. 478  DATA "All rights reserved."
  70. 482  '
  71. 500  REM Top of each page routine
  72. 510  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  73. 520  LPRINT
  74. 530  LPRINT TAB(30); TRIM.LINE$
  75. 540  LPRINT DASHES$ 'Dashes
  76. 550  FOR I = 1 TO 6
  77. 560   LPRINT
  78. 570  NEXT I
  79. 580  LINE.NO = LINE.NO + 6
  80. 590  RETURN
  81. 600  '
  82. 610  REM Bottom of each page Routine
  83. 620  IF PAGE.NO < 1 THEN LPRINT : LPRINT : LPRINT : GOTO 740
  84. 630  LPRINT TAB(TAB.POS); STRING$(40,45)  'on line 46
  85. 640  LPRINT TAB(TAB.POS+3); TITLE$+" ON DISPLAY.  Version 1.3" 'on line 47
  86. 650  IF PAGE.NO MOD 2 = 1 THEN 690
  87. 660  LPRINT TAB(TAB.POS);"Page";PAGE.NO;
  88. 670  LPRINT TAB(TAB.POS+27);"User's Manual"
  89. 680  GOTO 740
  90. 690  LPRINT TAB(TAB.POS); "User's Manual";
  91. 700  IF PAGE.NO < 10 THEN DELTA = 34
  92. 710  IF PAGE.NO >  9 THEN DELTA = 33
  93. 720  IF PAGE.NO > 99 THEN DELTA = 32
  94. 730  LPRINT TAB(TAB.POS+DELTA); "Page"; PAGE.NO  'on line 48
  95. 740  LPRINT : LPRINT : LPRINT
  96. 750  LPRINT DASHES$ 'dashes after 51
  97. 760  LPRINT TAB(30); TRIM.LINE$
  98. 770  LPRINT CHR$(12);
  99. 780  PAGE.NO = PAGE.NO + 1
  100. 790  LINE.NO = 1
  101. 800  IF REPLY$ = ".eof" THEN 820  'Bypass after last page
  102. 810  GOSUB 500  'For top of next page
  103. 820  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  104. 830  RETURN
  105. 840  '
  106. 850  REM Command Processor
  107. 860  IF LEFT$(REPLY$,3) = ".h1" THEN 960
  108. 870  IF LEFT$(REPLY$,3) = ".h2" THEN 1100
  109. 880  IF LEFT$(REPLY$,3) = ".h3" THEN 1210
  110. 890  IF LEFT$(REPLY$,3) = ".sp" THEN 1320
  111. 900  IF LEFT$(REPLY$,4) = ".eof" THEN 1370
  112. 910  IF LEFT$(REPLY$,3) = ".pa" THEN 1410
  113. 920  IF LEFT$(REPLY$,3) = ".vt" THEN 1480
  114. 930  IF LEFT$(REPLY$,3) = ".pk" THEN 1590
  115. 940  IF LEFT$(REPLY$,3) = ".in" THEN 1720
  116. 950  STOP
  117. 960  REM Head 1 Processor
  118. 970  FOR I = LINE.NO TO 44
  119. 980   LPRINT
  120. 990  NEXT I
  121. 1000  GOSUB 610  'Bottom of page Routine
  122. 1010  IF PAGE.NO MOD 2 = 0 THEN GOSUB 1410  'For h1 on Odd pages
  123. 1020  LPRINT CHR$(14);  'Set expanded print
  124. 1030  IF PAGE.NO MOD 2 = 0 THEN ADJUST = -4 ELSE ADJUST = -7
  125. 1040  LPRINT TAB(TAB.POS+ADJUST); RIGHT$(REPLY$,LEN(REPLY$)-4)
  126. 1050  LPRINT CHR$(18);  'Return to normal
  127. 1060  LINE.NO = LINE.NO+1
  128. 1070  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  129. 1080  RETURN
  130. 1090  '
  131. 1100  REM Head 2 Processor
  132. 1110  IF LINE.NO = 7 THEN 1130 'skip spacing if at top of page
  133. 1120  IF LINE.NO > 43 THEN GOSUB 1410 ELSE LPRINT:LPRINT:LINE.NO = LINE.NO+2
  134. 1130  LPRINT CHR$(27); "E"; 'Set emphasized print
  135. 1140  LPRINT TAB(TAB.POS); RIGHT$(REPLY$,LEN(REPLY$)-4)
  136. 1150  LPRINT CHR$(27); "F"; 'Return to normal
  137. 1160  LPRINT
  138. 1170  LINE.NO = LINE.NO + 2
  139. 1180  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  140. 1190  RETURN
  141. 1200  '
  142. 1210  REM Head 3 Processor
  143. 1220  IF LINE.NO = 7 THEN 1240 'skip spacing if at top of page
  144. 1230  IF LINE.NO > 43 THEN GOSUB 1410 ELSE LPRINT:LPRINT:LINE.NO = LINE.NO+2
  145. 1240  LPRINT CHR$(27); "E"; 'Set emphasized print
  146. 1250  LPRINT TAB(TAB.POS); RIGHT$(REPLY$,LEN(REPLY$)-4)
  147. 1260  LPRINT CHR$(27); "F"; 'Return to normal
  148. 1270  LPRINT
  149. 1280  LINE.NO = LINE.NO + 2
  150. 1290  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  151. 1300  RETURN
  152. 1310  '
  153. 1320  REM Single Space Processor
  154. 1330  IF LINE.NO = 7 THEN 1350
  155. 1340  IF LINE.NO > 44 THEN GOSUB 1410 ELSE LPRINT : LINE.NO = LINE.NO + 1
  156. 1350  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  157. 1360  RETURN
  158. 1370  REM End of File Processor
  159. 1380  GOSUB 1410 'Bottom of Page
  160. 1390  LPRINT CHR$(12);
  161. 1400  GOTO 15470
  162. 1410  REM Page Eject Processor
  163. 1420  FOR I = LINE.NO TO 44
  164. 1430   LPRINT
  165. 1440   LINE.NO = LINE.NO + 1
  166. 1450  NEXT I
  167. 1460  GOSUB 610  'Bottom of Page Processing
  168. 1470  RETURN
  169. 1480  REM Vertical Tab Processor
  170. 1490  IF LINE.NO = 7 THEN 1580
  171. 1500  IF LINE.NO > 44 THEN GOSUB 610  'End of page
  172. 1510  QTY = VAL(RIGHT$(REPLY$,LEN(REPLY$)-3))
  173. 1520  FOR I = 1 TO QTY
  174. 1530   LPRINT
  175. 1540   LINE.NO = LINE.NO + 1
  176. 1550   IF LINE.NO > 44 THEN I = QTY
  177. 1560  NEXT I
  178. 1570  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  179. 1580  RETURN
  180. 1590  REM Pack Processor
  181. 1600  IF LINE.NO > 44 THEN GOSUB 610
  182. 1610  IF TAB.POS = 8 THEN ADJUST = 4
  183. 1620  IF TAB.POS = 13 THEN ADJUST = 7
  184. 1630  TAB.POS = TAB.POS + ADJUST + INDENT
  185. 1640  LPRINT CHR$(15); 'Packed printing
  186. 1650  WIDTH "lpt1:", 132 'set condensed width
  187. 1660  LPRINT TAB(TAB.POS); RIGHT$(REPLY$,LEN(REPLY$)-3)
  188. 1670  LPRINT CHR$(18); 'Return to normal
  189. 1680  WIDTH "lpt1:", 80  'return to normal
  190. 1690  LINE.NO = LINE.NO + 1
  191. 1700  IF PAGE.NO MOD 2 = 0 THEN TAB.POS = 8 ELSE TAB.POS = 13
  192. 1710  RETURN
  193. 1720  REM Indent Processor
  194. 1730  INDENT = VAL(RIGHT$(REPLY$,LEN(REPLY$)-3))
  195. 1740  RETURN
  196. 1750  DATA ".h1 TABLE OF CONTENTS"
  197. 1760  DATA ".sp"
  198. 1770  DATA "INTRODUCTION - - - - - - - - - - - -   1"
  199. 1780  DATA "  OVERVIEW - - - - - - - - - - - - -   1"
  200. 1790  DATA "  CAPABILITIES - - - - - - - - - - -   1"
  201. 1800  DATA "    Display the Genealogy  - - - - -   2"
  202. 1810  DATA "    Print Pedigree Charts  - - - - -   2"
  203. 1820  DATA "    Print Family Group Sheets  - - -   3"
  204. 1830  DATA "    Create the Data Files  - - - - -   3"
  205. 1840  DATA "    Update the Data Files  - - - - -   3"
  206. 1850  DATA "    Create the Indices - - - - - - -   4"
  207. 1860  DATA "    List the Records in the File - -   4"
  208. 1870  DATA "    Printing the Contents of the"
  209. 1880  DATA "      files  - - - - - - - - - - - -   4"
  210. 1890  DATA "    Alphabetical Lists - - - - - - -   5"
  211. 1900  DATA "    Parent/Child Index List  - - - -   5"
  212. 1910  DATA "  BENEFITS/ADVANTAGES  - - - - - - -   6"
  213. 1920  DATA "  RESULTS  - - - - - - - - - - - - -   6"
  214. 1930  DATA "  REQUIREMENTS - - - - - - - - - - -   7"
  215. 1940  DATA "    Hardware Requirements  - - - - -   7"
  216. 1950  DATA "    Software Requirements  - - - - -   8"
  217. 1960  DATA ".sp"
  218. 1970  DATA "GENERAL INFORMATION  - - - - - - - -   9"
  219. 1980  DATA "  DESCRIPTION OF FUNCTIONS - - - - -   9"
  220. 1990  DATA "    File Creation  - - - - - - - - -   9"
  221. 2000  DATA "    File Maintenance - - - - - - - -   9"
  222. 2010  DATA "    File Indices - - - - - - - - - -   9"
  223. 2020  DATA "    Summary Lists  - - - - - - - - -  10"
  224. 2030  DATA "    Detailed Data  - - - - - - - - -  10"
  225. 2040  DATA "    Displaying the Genealogy - - - -  10"
  226. 2050  DATA "    Printing Pedigree Charts - - - -  11"
  227. 2060  DATA "    Printing Family Group Sheets - -  11"
  228. 2070  DATA ".pa"
  229. 2080  DATA "  DEFINITION OF TERMS  - - - - - - -  12"
  230. 2090  DATA "    Personal Information - - - - - -  12"
  231. 2100  DATA "    Pedigree Information - - - - - -  12"
  232. 2110  DATA "    Family Group Information - - - -  12"
  233. 2120  DATA "    Ordinance Information  - - - - -  13"
  234. 2130  DATA "  EXPLANATION OF GENERAL CONCEPTS  -  14"
  235. 2140  DATA "    Persfile - - - - - - - - - - - -  15"
  236. 2150  DATA "    Marrfile - - - - - - - - - - - -  16"
  237. 2160  DATA "    Pcindex  - - - - - - - - - - - -  17"
  238. 2170  DATA "    Mindex - - - - - - - - - - - - -  17"
  239. 2180  DATA "    Ordfile  - - - - - - - - - - - -  18"
  240. 2190  DATA "    Relationships  - - - - - - - - -  19"
  241. 2200  DATA "  BEFORE YOU START - - - - - - - - -  20"
  242. 2205  DATA "    List of Persons  - - - - - - - -  20"
  243. 2207  DATA "    List of Marriages  - - - - - - -  22"
  244. 2210  DATA ".sp"
  245. 2220  DATA "USING THE PROGRAM  - - - - - - - - -  23"
  246. 2225  DATA "  GETTING STARTED  - - - - - - - - -  23"
  247. 2230  DATA "  FIRST TIME USAGE - - - - - - - - -  25"
  248. 2240  DATA "    Caution  - - - - - - - - - - - -  26"
  249. 2260  DATA "  HOW TO OPERATE - - - - - - - - - -  27"
  250. 2270  DATA "    Operating the updatper program -  27"
  251. 2280  DATA "    Operating the updatmar program -  29"
  252. 2290  DATA "    Operating the updatord program -  30"
  253. 2295  DATA "    Operating the indexpc program  -  31"
  254. 2296  DATA "    Operating the indexmar program -  32"
  255. 2300  DATA "    Operating the display program  -  33"
  256. 2310  DATA "    Operating the pedigree program -  36"
  257. 2320  DATA "    Operating the family program - -  37"
  258. 2330  DATA "    Operating the other programs - -  38"
  259. 2340  DATA "  HOW TO STOP  - - - - - - - - - - -  39"
  260. 2350  DATA "    Stopping the update programs - -  39"
  261. 2370  DATA "    Stopping the display program - -  39"
  262. 2380  DATA "    Stopping the pedigree program  -  39"
  263. 2390  DATA "    Stopping the family program  - -  39"
  264. 2400  DATA "    Stopping the other programs  - -  40"
  265. 2410  DATA ".pa"
  266. 2420  DATA "REFERENCE MATERIAL - - - - - - - - -  41"
  267. 2430  DATA "  SAMPLE SCREENS AND PROMPTING"
  268. 2440  DATA "      MESSAGES - - - - - - - - - - -  41"
  269. 2450  DATA "    Personal Information - - - - - -  44"
  270. 2460  DATA "    Pedigree Information - - - - - -  45"
  271. 2470  DATA "    Family Group Information - - - -  46"
  272. 2480  DATA "    Ordinance Information  - - - - -  47"
  273. 2490  DATA "  COMMANDS USED  - - - - - - - - - -  48"
  274. 2500  DATA "    Basic Command  - - - - - - - - -  48"
  275. 2510  DATA "    Load Command - - - - - - - - - -  48"
  276. 2520  DATA "    Run Command  - - - - - - - - - -  48"
  277. 2530  DATA ".sp"
  278. 2540  DATA "APPENDIX A.  MESSAGES  - - - - - - -  49"
  279. 2550  DATA "  Start-up Messages  - - - - - - - -  49"
  280. 2560  DATA "  Error Messages - - - - - - - - - -  50"
  281. 2570  DATA ".sp"
  282. 2580  DATA "APPENDIX B. SUMMARY  - - - - - - - -  51"
  283. 2590  DATA "  General Programs - - - - - - - - -  51"
  284. 2600  DATA "  Documentation  - - - - - - - - - -  52"
  285. 2620  DATA ".sp"
  286. 2630  DATA "APPENDIX C. HINTS  - - - - - - - - -  53"
  287. 2640  DATA "  Names  - - - - - - - - - - - - - -  53"
  288. 2650  DATA "  Dates  - - - - - - - - - - - - - -  53"
  289. 2660  DATA "  Commas - - - - - - - - - - - - - -  53"
  290. 2670  DATA "  Replacing with Blanks  - - - - - -  54"
  291. 2680  DATA "  Placement of Programs  - - - - - -  54"
  292. 2800  DATA ".pa"
  293. 2810  DATA "APPENDIX D.  MODIFICATIONS - - - - -  55"
  294. 2820  DATA "  Changing the Number of Persons - -  55"
  295. 2830  DATA "  Changing the Number of Marriages -  59"
  296. 2840  DATA "  Repositioning the Data Files - - -  62"
  297. 2850  DATA "    Persons File - - - - - - - - - -  62"
  298. 2860  DATA "    Marriages File - - - - - - - - -  63"
  299. 2870  DATA "    Ordinances File  - - - - - - - -  64"
  300. 2880  DATA "    Parent/Child Index - - - - - - -  65"
  301. 2890  DATA "    Marriages Index  - - - - - - - -  66"
  302. 2900  DATA "  Removing the Ordinances File - - -  67"
  303. 2910  DATA "  Changing the Ordinances File - - -  68"
  304. 2920  DATA "  Utilizing Other Printers - - - - -  69"
  305. 2930  DATA ".sp"
  306. 2940  DATA "APPENDIX E.  TERMS & CONDITIONS  - -  73"
  307. 2950  DATA "  Terms  - - - - - - - - - - - - - -  73"
  308. 2960  DATA "  Conditions - - - - - - - - - - - -  74"
  309. 2980  DATA "  Disclaimer - - - - - - - - - - - -  74"
  310. 15460  DATA ".eof"
  311. 15470  END
  312.